package com.littleken.foodieCommon.exception;

import com.littleken.foodieCommon.Response.IErrorCode;

/*
 * 系统运行时候参数的错误，用于被捕捉并向前端展示
 * Create by littleken on 2020/11/23 15:23
 */
public class GoffException extends RuntimeException {
    /**
     *
     */
    private static final long serialVersionUID = 1L;
    private int errcode;
    private String errmsg;
    private String detailErrMsg; //详细错误信息

    public GoffException() {
        super();
    }

    public GoffException(int errcode, String errmsg) {
        this(errcode, errmsg, null);
    }

    public GoffException(int errcode, String errmsg, String detailErrMsg) {
        super(errmsg);
        this.setErrcode(errcode);
        this.setErrmsg(errmsg);
        this.setDetailErrMsg(detailErrMsg);
    }

    public GoffException(IErrorCode errorCode) {
        this(errorCode.getCode(), errorCode.getDscr(), null);
    }

    public GoffException(IErrorCode errorCode, String detailErrMsg) {
        this(errorCode.getCode(), errorCode.getDscr(), detailErrMsg);
    }

    public int getErrcode() {
        return errcode;
    }

    public void setErrcode(int errcode) {
        this.errcode = errcode;
    }

    public String getErrmsg() {
        return errmsg;
    }

    public void setErrmsg(String errmsg) {
        this.errmsg = errmsg;
    }

    public String getDetailErrMsg() {
        return detailErrMsg;
    }

    public void setDetailErrMsg(String detailErrMsg) {
        this.detailErrMsg = detailErrMsg;
    }

}
